home *** CD-ROM | disk | FTP | other *** search
/ Chip 1998 September / CHIP Eylül 1998.iso / Slackwar / docs / mini / Gravis-Ultra-Sound < prev    next >
Text File  |  1997-10-07  |  8KB  |  191 lines

  1. THE GUS MINI HOWTO
  2.  
  3. Version 0.2.2; 14/9/1997 (that's European date format ;-)
  4.  
  5. (C)opyright 1997 Nicolai Langfeldt (janl@math.uio.no)
  6.  
  7. This is a HOWTO on how to get Gravis Ultra Sound cards working under
  8. Linux.  Specifically I describe the the 'Perex Ultra' driver for
  9. Linux, it's a alternate sound driver for GUS cards, including GUS PnP.
  10.  
  11. The regular sound driver in Linux can drive most GUS cards, but not
  12. GUS PnP, easily.  If you read the "Initializing PnP cards" and look at
  13. the referred configuration files you can probably work out to get the
  14. regular driver to work though, it's not, strictly speaking, magic.  An
  15. other alternative is 4Front's commercial driver, for which you can
  16. obtain a 5 day trial version.  See http://www.4Front-Tech.com/ (this
  17. is a much enhanced commercial version of the regular Linux sound
  18. driver).  Of all the three drivers 4Front's driver was easiest to get
  19. working on my machine.  It is my opinion that the Perex Ultra driver
  20. is the best free alternative.
  21.  
  22. * Getting it
  23.  
  24. First of all: you need root access to the machine you're installing
  25. on.  If you haven't got that you can forget installing sound drivers.
  26.  
  27. Then you get the driver.  http://www.pf.jcu.cz/~perex/ultra/ lists a
  28. number of ftp sites.  The home site is
  29. ftp://romeo.pf.jcu.cz/pub/perex/ultra/.  In the directory final you
  30. find the final, working, versions of the driver.  At this time
  31. (6/9/97) the latest is 2.71b.  Fetch the driver version you want.
  32.  
  33. * Problems?
  34.  
  35. If, you like me, get problems getting any sound out of the card at all
  36. you must debug.  To help with this the distribution contains a FAQ
  37. (the file is called FAQ ;-)
  38.  
  39. * Installing
  40.  
  41. I will assume directory and filenames are according to the 2.71b
  42. version.  Unpack it (tar xvzf ultra-2.71b.tgz).  It unpacks into a new
  43. directory, ultra-2.71b, cd there.
  44.  
  45. First you have to configure the package.  Simply type './configure'.
  46. It will figure out what kind of CPU you have, and how many.  Please
  47. note that a ultra driver compiled for SMP (multi-CPU) machines will
  48. not work on single CPU machines, and vice versa.
  49.  
  50. To compile go 'make compile'.  It will print some CPU and architecture
  51. info, install paths and ask you to press return.  If you're unhappy
  52. with something it printed press ^C and edit the Makefile to match your
  53. tastes.  Otherwise press return (enter).  If you change the paths, be
  54. aware that some programs, like ultramidi expect the midi config files
  55. to be in /usr/local/etc no matter where the top Makefile has them
  56. placed.  At the next prompt (GUSCFG_MAJOR question) press return
  57. again.  At the next prompt (GUSCFG_ALL) decide if you want a driver
  58. that can handle all GUS cards or not.  One for all cards will be
  59. slightly larger.  If you answer 'n' you now get to select what card(s)
  60. to support, select the card(s) you want.  Press return on all the
  61. prompts thereafter.  The driver should now compile.
  62.  
  63. If there are any compilation errors fix them, and report them to Perex
  64. (email: perex@pf.jcu.cz).  You can ignore all/any warnings.
  65.  
  66. Once it compiles ok do 'make install'.  This will install the driver,
  67. config files and the accompanying binaries in the directories shown
  68. when the compilation started.
  69.  
  70. * Initializing PnP cards
  71.  
  72. If you have a PnP card you _might_ need to do some more work.  I had
  73. to do what I describe in this section to get my card working.  Other
  74. people has told me they didn't have to, and indeed, it's supposed to
  75. work without doing this.  If after loading the driver and trying to
  76. play sounds (see the next section; "Getting it working") there is no
  77. sound and /dev/gusinfo is unreadable go back here.  If it works with
  78. no special initialization; cool.
  79.  
  80. The PnP tools, and a sample configuration file is included in
  81. src/driver/isapnptools-1.7.  cd there.  If you don't have isapnptools
  82. already installed go 'make' to compile the software, and 'cp pnpdump
  83. isapnp /sbin' to install it.  A word of WARNING: Running pnpdump can
  84. cause your computer to lock up real hard, real fast.  The latest
  85. version of isapnptools can be found at
  86. ftp://ftp.demon.co.uk/pub/unix/linux/utils, it's currently at version
  87. 1.10.
  88.  
  89. The file gravis.conf is supplied as an example configuration file.
  90. You can almost certainly use that, with some small modifications.  You
  91. want to configure a card called GRV0001.  But the supplied file
  92. initializes
  93.  
  94.   GRV0001/1
  95.  
  96. Which probably don't match your hardware.  Run 
  97.  
  98.   pnpdump >mygravis.conf
  99.  
  100. The file mygravis.conf will now contain information on all your
  101. ISA-PnP cards.  Look in the file and find the CONFIGURE lines with the
  102. GRV0001 numbers.  On my machine it's:
  103.  
  104.   GRV0001/7332
  105.  
  106. So in my case, I just substitute all instances of GRV0001/1 with
  107. GRV0001/7332.  Put the new file at the end of /etc/isapnp.conf.  Run
  108. 'isapnp /etc/isapnp.conf'.  There won't be any error messages, trust
  109. me >:-).  At this point the card is initialized to the listed
  110. interrupts, DMAs and other things.
  111.  
  112. * Getting it working
  113.  
  114. First run /usr/local/bin/gusdevs.  This will make the special files in
  115. /dev that the gus driver needs.  If the file
  116. /usr/local/etc/gus-midi-gf1.defs isn't there copy it from
  117. src/driver/daemon/gus-midi-gf1.defs in the distribution.
  118.  
  119. Now we'll see if the driver is working.  First connect headphones or
  120. loudspeakers to your card.  Then run 'insgus', it loads the driver.
  121. It should not print any messages, if it does something is wrong.  To
  122. test the driver play some sound.  A very rough test is to copy your
  123. kernel to the sound system.  Try this:
  124.  
  125.   cat /boot/vmlinuz >/dev/audio
  126.  
  127. (this assumes that /boot/vmlinuz is the name of your kernel).  This
  128. should make some noise.  You can adjust the cards volume with the
  129. gusmix or xgusmix program.  The Main/Master and PCM volumes needs to
  130. be up.  If gusmix/xgusmix won't run the driver isn't working at all.
  131. If it dosn't make any sound the driver is not working right.
  132.  
  133. Another diagnostic is to run 'cat /dev/gusinfo'.  If you get a 'no
  134. such device' message things are _not_ working.  This 'file' should
  135. also show the correct amount of memory on your board.
  136.  
  137. * Making it work permanently.
  138.  
  139. Once the driver is working we can modify boot scripts and config files
  140. so that we don't have to think about it anymore.
  141.  
  142. There are two ways to load the driver, with modprobe/kerneld, or by
  143. running the insgus program.  
  144.  
  145. To use the insgus program just put a insgus command in your boot
  146. scripts.  On a RedHat system /etc/rc.d/rc.local is a good place.  If
  147. you have some other system please e-mail me, telling me where to put
  148. the command.  Make sure /usr/local/bin is in your path, or write the
  149. command completely out: /usr/local/bin/insgus.
  150.  
  151. If you have a PnP card you need to run the isapnp command each time
  152. the machine boots: 'isapnp /etc/isapnp.conf'.  Again: On a RedHat
  153. system /etc/rc.d/rc.local is a good place.  Run it _before_ running
  154. insgus though!!!
  155.  
  156. My favorite is using kerneld.  You need to edit your /etc/conf.modules
  157. file.  In the apps-setup directory of the ultra distribution there is
  158. a file called conf.modules:
  159.  
  160. ----
  161. #
  162. # Configuration for GUS driver from The Ultra Sound Project...
  163. #
  164.  
  165. path=/usr/local/etc
  166. alias char-major-14 gus
  167. install gus /usr/local/etc/insgus -Kn
  168. remove gus /usr/local/etc/insgus -Kk
  169. ----
  170.  
  171. Insert it at the end of your /etc/conf.modules file (if you haven't
  172. got one check if you have modules.conf instead, if not, just make
  173. conf.modules).  There is a slight typo in the file (in version 2.71b,
  174. shown above), the path to the insgus program is actually
  175. /usr/local/bin/insgus, so fix that.  Once that is in place the driver
  176. should auto load whenever a sound device is opened for use (when you
  177. try to play a sound or run a mixer program) and after being unused a
  178. while the module will be automatically removed.  More on all this in
  179. the kerneld mini howto.
  180.  
  181. * Finished?
  182.  
  183. That's it.  Follow the links on Perex' Ultra page to find more
  184. information about sound playing and such under Linux.
  185.  
  186. Oh, and, the ultramod and ultramidi programs seem to require that you
  187. have RAM on your sound-card.  I don't have any RAM, so I use mikmod,
  188. available on sunsite.unc.edu to play mod files.  I haven't gotten
  189. around to midi yet.
  190.  
  191.